The present invention relates to a mechanism for communicating messages, each including a command and a response, in a network having a coupling facility and multiple central processing complexes (CPCs), each CPC having a central processor and main storage and more particularly relates to a mechanism in which a command issued by the central processor of a CPC is executed by the coupling facility either synchronously or asynchronously to the CPU under program control, wherein the command requests operands from main storage, operates on storage objects at the coupling facility, and stores response operands in main storage.
I/O operations normally require more time to complete than it takes for the operating system to exchange state information and switch to another task. Thus I/O operations are performed asynchronously to CPU instruction processing. On the other hand, the message operations of the present invention are designed to be performed in less time than it takes to switch tasks. Thus, system overhead is reduced by performing them synchronously to CPU instruction processing. Another benefit of synchronous operation is that CPC cache castouts resulting from task switching are eliminated. Still a third benefit is reduced programming costs for accessing the message functions.
While system efficiency is improved by performing many message operations synchronously to CPU instruction processing, other message operations should still be performed asynchronously. For example, an operation that clears a storage location in shared expanded storage does not require suspending the requesting transaction pending its completion. In addition, no completion indication is required by the transaction. Thus, instruction processing for the transaction can continue while, at the same time, the clearing operation is performed at shared expanded storage.